//
//  QSWaterflowLayout.h
//  TestTouchEvent
//
//  Created by apple on 2016/11/29.
//  Copyright © 2016年 Song. All rights reserved.
//

/**
 *  使用方法
 *
 *  创建QSWaterflowLayout后，设置最小行距和列距：minimumLineSpacing、minimumInteritemSpacing
 *  实现下面的两个代理方法，否则程序会崩溃
 */

#import <UIKit/UIKit.h>

@class QSWaterflowLayout;

@protocol QSWaterflowLayoutDelegate <NSObject>
@required
/**
 *  设置collectionView的列数
 *
 *  @param waterflowLayout 流水布局
 *  return 列数
 */
- (NSInteger)numberOfColumnInWaterflowLayout:(QSWaterflowLayout *)waterflowLayout;

/**
 *  设置item的高度
 *
 *  @param waterFlowLayout 流水布局
 *  @param indexPath 下标值
 *  @param width item的宽度
 *  return item的高度
 */
- (CGFloat)waterFlowLayout:(QSWaterflowLayout *)waterFlowLayout withIndexPath:(NSIndexPath *)indexPath andItemWidth:(CGFloat)width;

@end

@interface QSWaterflowLayout : UICollectionViewFlowLayout
/**
 *  代理属性
 */
@property (nonatomic, weak) id<QSWaterflowLayoutDelegate> delegate;
@end
